$(document).ready(function(){
	//获取验证码
	getCode();
	//获取验证码按钮事件
	$("#code_btn").on("click",getCode);
})

/**
 * 获取验证码
 */
function getCode(){
	var str = "1234567890qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM";
	var thiscode = "";
	for(var i=0;i<4;i++){
		var rand = Math.floor(Math.random()*str.length);
		thiscode += str.charAt(rand);
	}
	$("#code_text").val(thiscode);
	//聚焦输入验证码框
	$("#code_val").focus();
}

/**
 * 提交表单
 */
function onSubmit(){
	//用户信息
	var user_name     = $("input[name='user_name']").eq(0).val();
	var user_password = $("input[name='user_password']").eq(0).val();
	var user_phone    = $("input[name='user_phone']").eq(0).val();
	var user_danwei   = $("input[name='user_danwei']").eq(0).val();
	
	//验证码
	var code_text=$("#code_text").val().toLowerCase();
	var code     =$("#code_val").val().toLowerCase();
	//判断信息是否填写完整
	if(user_name == "" || user_danwei == "" || user_phone == "" || user_password == ""){
		alert("信息未填写完整");
		return false;
	}
	else{
		//密码六位以上
		if(user_password.length<6){
			alert("密码强度太低\n请输入六位以上的密码");
			return false;
		}
		//验证码是否正确
		if(code_text != code){
			alert("验证码有误");
			return false;
		}
	}
	//检查输入是否带有表情
	if(isEmojiCharacter(user_name) || isEmojiCharacter(user_phone) 
			|| isEmojiCharacter(user_danwei || isEmojiCharacter(user_password))){
		alert("格式有误\n输入中带有表情");
		return false;
	}
	return true;
}

/**
 * 检查输入是否带有表情
 */
function isEmojiCharacter(substring) {
    for ( var i = 0; i < substring.length; i++) {
        var hs = substring.charCodeAt(i);
        if (0xd800 <= hs && hs <= 0xdbff) {
            if (substring.length > 1) {
                var ls = substring.charCodeAt(i + 1);
                var uc = ((hs - 0xd800) * 0x400) + (ls - 0xdc00) + 0x10000;
                if (0x1d000 <= uc && uc <= 0x1f77f) {
                    return true;
                }
            }
        } else if (substring.length > 1) {
            var ls = substring.charCodeAt(i + 1);
            if (ls == 0x20e3) {
                return true;
            }
        } else {
            if (0x2100 <= hs && hs <= 0x27ff) {
                return true;
            } else if (0x2B05 <= hs && hs <= 0x2b07) {
                return true;
            } else if (0x2934 <= hs && hs <= 0x2935) {
                return true;
            } else if (0x3297 <= hs && hs <= 0x3299) {
                return true;
            } else if (hs == 0xa9 || hs == 0xae || hs == 0x303d || hs == 0x3030
                    || hs == 0x2b55 || hs == 0x2b1c || hs == 0x2b1b
                    || hs == 0x2b50) {
                return true;
            }
        }
    }
}